/*
 * @lc app=leetcode.cn id=7 lang=golang
 * @lcpr version=30118
 *
 * [7] 整数反转
 */

// @lcpr-template-start

// @lcpr-template-end
// @lc code=start
func reverse(x int) int {
	y := int64(x)
	neg := y < 0
	if neg {
		y = -y
	}
	res := int64(0)
	for y != 0 {
		res = res*10 + y%10
		if res > math.MaxInt32 || res < math.MinInt32 {
			return 0
		}
		y /= 10
	}
	if neg {
		res = -res
	}
	return int(res)
}

// @lc code=end

/*
// @lcpr case=start
// 123\n
// @lcpr case=end

// @lcpr case=start
// -123\n
// @lcpr case=end

// @lcpr case=start
// 120\n
// @lcpr case=end

// @lcpr case=start
// 0\n
// @lcpr case=end

*/

